1. Field of the Invention
The present invention relates generally to methods and apparatuses for automatic activation of bus termination on a Fast Ethernet repeater stack. More specifically, the invention relates to methods and apparatuses for automatically determining which repeaters from of a group of repeaters in a Fast Ethernet repeater stack happen to be plugged into the end of the stack. A top repeater and a bottom repeater are identified and a termination circuit is activated and connected to the bus for each of those repeaters so that the bus is terminated at the repeaters at the ends of the stack. This prevents reflections of signals on the bus that would otherwise occur and degrade the performance of the bus. Because the top and bottom Fast Ethernet repeaters are determined automatically, it is not necessary for a system administrator to configure the stack or to connect a termination plug to the top and bottom machines.
2. Description of the Related Art
The growth of local-area networks (LANs) has been driven by the introduction of Ethernet Technology as well as the availability of powerful, affordable personal computers and workstations. As a result, applications that once were possible only on mainframe computers are now running on LANs. Network speed and availability are critical requirements. However, existing applications and a new generation of multimedia, groupware, imaging, and database products can tax a network running at Ethernet""s traditional speed of 10 megabits per second (Mbps). Moreover, with more applications requiring faster LAN speeds for acceptable performance, network managers increasingly find that high-performance computation platforms and mission-critical applications can overwhelm a 10 Mbps network. Network managers therefore are increasingly implementing high-speed LAN technology.
Fast Ethernet
For organizations with existing Ethernet installations, increasing the network speed to 100 Mbps is preferable to investing in a completely new LAN technology. This user preference has driven the industry""s decision to specify a higher-speed Ethernet that operates at 100 Mbps. This higher-speed Ethernet is known as Fast Ethernet.
In July 1993, a group of networking companies joined to form the Fast Ethernet Alliance. The charter of the group was to draft the 802.3u 100BaseT specification (xe2x80x9c802.3 specificationxe2x80x9d) of the Institute of Electrical and Electronics Engineers (IEEE) and to accelerate market acceptance of Fast Ethernet technology. The final IEEE 802.3 specification was approved in June 1995. Among the other goals of the Fast Ethernet Alliance are: to maintain the Ethernet transmission protocol Carrier Sense Multiple Access Collision Detection (CSMA/CD); to support popular cabling schemes; and to ensure that Fast Ethernet technology will not require changes to the upper-layer protocols and software that run on LAN workstations. For example, no changes are necessary to Simple Network Management Protocol (SNMP) management software or Management Information Bases (MIBs) in order to implement Fast Ethernet.
Other high-speed technologies, such as 100VG-AnyLAN and Asynchronous Transfer Mode (ATM), achieve data rates in excess of 100 Mbps by implementing different protocols that require translation when data moves to and from 10BaseT. Protocol translation requires changing the frame, which often incurs higher latencies when passing through layer 2 (data-link layer) LAN switches.
In many cases, organizations can upgrade to 100BaseT technology without replacing existing wiring. Options for 100BaseT media are the same as those for 10BaseT. They include shielded and unshielded twisted pair (STP and UTP) and fiber. The Media Independent Interface (MII) provides a single interface that can support external transceivers for any of the 100BaseT physical sublayers.
CSMA/CD
Carrier sense-collision detection is widely used in LANs. Many vendors use this technique with Ethernet and the IEEE 802.3 specification. A carrier sense LAN considers all stations as peers; the stations contend for the use of the channel on an equal basis. Before transmitting, the stations monitor the channel to determine if the channel is active (that is, if another station is sending data on the channel). If the channel is idle, any station with data to transmit can send its traffic onto the channel. If the channel is occupied, the stations must defer to the station using the channel.
FIG. 1 depicts a carrier sense-collision detection LAN. Network devices 102, 104, 106, and 108 are attached to a network bus 110. Only one network device at a time is allowed to broadcast over the bus, since if more than one device were to broadcast at the same time, the combination of signals on the bus would likely not be intelligible. For example, assume network devices 102 and 104 want to transmit traffic. Network device 108, however, is currently using the channel, so network devices 102 and 104 must xe2x80x9clistenxe2x80x9d and defer to the signal from network device 108, which is occupying the bus. When the bus goes idle, network devices 102 and 104 can then attempt to acquire the bus to broadcast their messages.
Because network device 102""s transmission requires time to propagate to other network devices, these other network devices might be unaware that network device 102""s signal is on the channel. In this situation, network device 102 or 104 could transmit its traffic even if network device 108 had already seized the channel after detecting that the channel was idle. This problem is called the collision window. The collision window is a factor of the propagation delay of the signal and the distance between two competing stations. Propagation delay is the delay that occurs before a network device can detect that another network device is transmitting.
Each network device is capable of transmitting and listening to the channel simultaneously. When two network device signals collide, they create voltage irregularities on the channel, which are sensed by the colliding network devices. The network devices then turn off their transmission and, through an individually randomized wait period, attempt to seize the channel again. Randomized waiting decreases the chances of another collision because it is unlikely that the competing network devices generate the same wait time.
It is important that the total propagation delay not exceed the amount of time that is required to send the smallest size data frame. This allows devices to discard data corrupted by collisions by simply discarding all partial frames. It is therefore not desirable for entire frames of data to be sent before a collision is detected. Carrier sense networks are usually implemented on short-distance LANs because the collision window lengthens as the channel gets longer. Longer channels provide opportunity for the more collisions and can reduce through-put in the network. Generally, a long propagation delay coupled with short frames and high data transfer rates give rise to a greater incidence of collisions. Longer frames can mitigate the effect of long delay, but they reduce the opportunity for competing stations to acquire the channel.
The IEEE 802.3 specification sets a standard minimum frame size of 64 bytes (512 bits). Therefore, it order for a network to comply with the standard, a station on the network must not be able to transmit 64 bytes of data before a collision is detected.
Although Fast Ethernet maintains CSMA/CD, the Ethernet transmission protocol, it reduces the transmission time for each bit by a factor of 10. Thus, the Fast Ethernet packet speed increases tenfold, from 10 Mbps to 100 Mbps. Data can move between Ethernet and Fast Ethernet without requiring protocol translation or software changes, because Fast Ethernet maintains the 10BaseT error control functions as well as the frame format and length.
Repeaters
While some Ethernet applications connect numerous network devices to a network bus that is literally a cable connecting the network devices, it is often more desirable to connect network devices using a repeater or hub. It should be noted that in the following description the term xe2x80x9chubxe2x80x9d and the term xe2x80x9crepeaterxe2x80x9d are used interchangeably. The repeater manages collision detection for the network devices so that the network devices need only broadcast messages without detecting collisions. The repeater notifies a network device when a collision occurs during its attempt to transmit. In addition, the repeater implements a star topology so that more devices can be included on the network without violating any cable length restriction and so that many devices can be added or removed from the network efficiently.
An Ethernet repeater is a device that serves as a central station for plugging network devices included in an Ethernet network, hence the term xe2x80x9chub.xe2x80x9d The Ethernet repeater receives messages from the network devices that are plugged into it and broadcasts (or xe2x80x9crepeatsxe2x80x9d) the message to all of the other devices on the network along a network bus if no collision is detected. The repeater monitors network traffic in its collision domain and assumes the responsibility for collision detection. The network devices thus simply broadcast messages to the repeater and do not need to first listen before sending messages. If the repeater has already assigned the network bus to a device, then it notifies the device that tried to broadcast that a collision has occurred so that the network device may try again later. The amount of time that it takes for the repeater to receive a data signal and repeat that data signal out to every port on which the data signal is to be broadcast is referred to as the latency of the repeater.
The 802.3 specification contains maximum latency requirements that cannot be exceeded by a conforming repeater. The maximum permissible latency, combined with the requirements for maximum cable length and restrictions on the number and type of other devices allowed within a collision domain, limits the amount of time that it takes to notify a network device that a collision has occurred, ensuring that the overall 802.3 design criteria is met that all collisions are detected before a complete 64 byte frame is transmitted. If the maximum permissible latency were exceeded by a repeater, then multiple devices in the repeater""s collision domain on an 802.3 Ethernet network might broadcast complete frames of data before being notified of a collision. As described above, the broadcast of complete frames when a collision occurs would defeat a scheme for discarding data associated with collisions by simply discarding all partial frames.
Thus, minimizing the latency of a repeater is critical if the repeater is to be implemented on a network in accordance with the 802.3 specification. The 100BaseT standard defines two classes of repeaters: Class I and Class II. At most, a collision domain can include one Class I or two Class II repeaters. Including more than one repeater in a single collision domain is sometimes referred to as cascading repeaters. Specifically, in order to conform to the Class II requirement, the latency a repeater must be less than 46 bit times. It should be noted that the standard is expressed in terms of bit times, or the amount of data that could be transmitted on the network during the latency period.
Network Flexibility
The Class II requirement, which allows more than one repeater to be included in a single collision domain, significantly adds flexibility to network topology. Expanding the number of ports available on a network may be accomplished by simply adding a second repeater in the same collision domain as a single existing repeater. No switch is required. By limiting the latency of the two repeaters, it is ensured that collisions can be detected and devices connected to different repeaters can be notified of collisions in time to stop sending data before a complete frame is broadcast.
Because networks tend to constantly change and expand with network devices being added, it would be highly advantageous if, in addition to the Class II feature of allowing two repeaters in a collision domain, it were also possible that each of the two Class II repeaters were expandable or stackable. Additional ports could be added to a first repeater stack that functions as one Class II repeater and then a second stack could be included as a second Class II repeater. Thus, stackability combined with cascadability would provide even greater flexibility for network expansion.
There is therefore a need for a stackable repeater that could be plugged into a network in a flexible manner along with a group of other repeaters in a stack. For a stack of such repeaters to conform to the latency requirements set forth in the standard, a very high speed, efficient repeater stack bus would be required. Specifically, in order to conform to the Class II requirement, the total latency of all of the repeaters in the stack connected to the repeater stack bus must be less than 46 bit times. In order for a high speed bus necessary to meet this criteria to function properly, it would be necessary to ensure proper termination of the bus by the repeaters located at the ends of the bus.
Conventionally, bus termination for a stack of repeaters or a similar group of network devices is implemented using a pair of termination plugs that are plugged into the network devices that are located on the top and bottom of the repeater stack. It should be noted that, for the purpose of this discussion, the bottom repeater is assumed to have no repeater below it connected to its input connector and the top repeater is assumed to have no repeater above it connected to its output connector. As used herein for the purpose of considering bus termination, the designation of the input and output connectors is arbitrary as is the top and bottom designation. Furthermore, the top and bottom designation refers to the position of a repeater on the repeater stack bus and not necessarily the physical position of the repeater. What is important is that the repeaters that reside on the ends of the bus provide termination to the bus. The disadvantage of using termination plugs is that the plugs may or may not be properly plugged in each time that the stack is reconfigured by a system administrator. Similarly, another approach is to provide a small switch on each repeater that may be set by a user when the repeater is located at either end of the stack. Again, this approach has the disadvantage that the user must properly configure the repeater.
What is needed is an automatic system and method for providing termination at the ends of a repeater stack bus. Such a termination system should preferably work regardless of whether or not each of the individual repeaters at the ends of the stack bus happen to be powered on.
Accordingly, the present invention provides methods and apparatuses for automatic activation of bus termination on a Fast Ethernet repeater stack. Because the top and bottom Fast Ethernet repeaters are determined automatically, it is not necessary for a system administrator to configure the stack or to connect a termination plug to the top and bottom machines. A method for automatically determining which repeaters from of the group of repeaters comprising a Fast Ethernet-repeater stack happen to be plugged into the end of the stack is disclosed. When a top repeater and a bottom repeater are identified, a termination circuit is activated and connected to the bus for each of those repeaters so that the bus is terminated at the repeaters at the ends of the stack. This prevents reflections of signals on the bus that would otherwise occur and degrade the performance.
It should be appreciated that the present invention can be implemented in numerous ways, including as a process, an apparatus, a system, a device, a method, or a computer readable medium. Several inventive embodiments of the present invention are described below.
In one embodiment, an automatically activated bus termination circuit in a repeater that is suitable for inclusion in a repeater stack includes an end unit determination circuit. The end unit determination circuit includes a local input connector having an input sense pin. The input sense pin is configured to be connected to an input sense potential when the local input connector is connected to a remote output connector. A local output connector has an output sense pin. The output sense pin is configured to be connected to an output sense potential when the local output connector is connected to a remote input connector. A bus termination circuit is configured to be active when either the input sense pin is not connected to the input sense potential or the output sense pin is not connected to the output sense potential. As a result, the bus termination circuit is activated when the first stack bus connection cable is not connected from the local output connector to a remote input connector or when the second stack bus connection cable is not connected from the local input connector to a remote output connector.
These and other features and advantages of the present invention will be presented in more detail in the following specification of the invention and the accompanying figures which illustrate by way of example the principles of the invention.